package com.entmanage.base.collegeco.mapper;

import java.util.List;

import com.entmanage.base.collegeco.domain.CollegecoEvalTemplate;
import com.entmanage.base.collegeco.domain.CollegecoInternEvaluation;
import com.entmanage.base.collegeco.domain.CollegecoInternEvalScore;

/**
 * 实习生成绩鉴定主Mapper接口
 *
 * @author lsq
 * @date 2025-08-01
 */
public interface CollegecoInternEvaluationMapper
{
    /**
     * 查询实习生成绩鉴定主
     *
     * @param evaluationId 实习生成绩鉴定主主键
     * @return 实习生成绩鉴定主
     */
    public CollegecoInternEvaluation selectHrmInternEvaluationByEvaluationId(Long evaluationId);

    /**
     * 查询实习生成绩鉴定主列表
     *
     * @param hrmInternEvaluation 实习生成绩鉴定主
     * @return 实习生成绩鉴定主集合
     */
    public List<CollegecoInternEvaluation> selectHrmInternEvaluationList(CollegecoInternEvaluation hrmInternEvaluation);

    /**
     * 新增实习生成绩鉴定主
     *
     * @param hrmInternEvaluation 实习生成绩鉴定主
     * @return 结果
     */
    public int insertHrmInternEvaluation(CollegecoInternEvaluation hrmInternEvaluation);

    /**
     * 修改实习生成绩鉴定主
     *
     * @param hrmInternEvaluation 实习生成绩鉴定主
     * @return 结果
     */
    public int updateHrmInternEvaluation(CollegecoInternEvaluation hrmInternEvaluation);

    /**
     * 删除实习生成绩鉴定主
     *
     * @param evaluationId 实习生成绩鉴定主主键
     * @return 结果
     */
    public int deleteHrmInternEvaluationByEvaluationId(Long evaluationId);

    /**
     * 批量删除实习生成绩鉴定主
     *
     * @param evaluationIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteHrmInternEvaluationByEvaluationIds(Long[] evaluationIds);

    /**
     * 批量删除实习生成绩打分明细
     *
     * @param evaluationIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteHrmInternEvalScoreByEvaluationIds(Long[] evaluationIds);

    /**
     * 批量新增实习生成绩打分明细
     *
     * @param hrmInternEvalScoreList 实习生成绩打分明细列表
     * @return 结果
     */
    public int batchHrmInternEvalScore(List<CollegecoInternEvalScore> hrmInternEvalScoreList);

    /**
     * 通过实习生成绩鉴定主主键删除实习生成绩打分明细信息
     *
     * @param evaluationId 实习生成绩鉴定主ID
     * @return 结果
     */
    public int deleteHrmInternEvalScoreByEvaluationId(Long evaluationId);

    /**
     * 批量删除实习评分标准模板库（主）
     *
     * @param evaluationIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteHrmEvalTemplateByTemplateIds(Long[] evaluationIds);

    /**
     * 批量新增实习评分标准模板库（主）
     *
     * @param hrmEvalTemplateList 实习评分标准模板库（主）列表
     * @return 结果
     */
//    public int batchHrmEvalTemplate(List<CollegecoEvalTemplate> hrmEvalTemplateList);

    /**
     * 通过实习生成绩鉴定主主键删除实习评分标准模板库（主）信息
     *
     * @param evaluationId 实习生成绩鉴定主ID
     * @return 结果
     */
    public int deleteHrmEvalTemplateByTemplateId(Long evaluationId);

}

